package array;

/**
 * 输入：nums = [3,4,5,1,2]
 * 输出：1
 * 解释：原数组为 [1,2,3,4,5] ，旋转 3 次得到输入数组。
 */
public class L153 {
    public int findMin(int[] nums) {
        int n=nums.length;
        int low=1,high=n-1;
        int min=Integer.MAX_VALUE;
        while (low<=high){
            int mid=((high - low) >> 1) + low;
            if (nums[mid]<nums[0]){
                high=mid-1;
                min=nums[mid];
            }else {
                low=mid+1;
            }

        }
        return min=min>nums[0]?nums[0]:min;
    }
}
